home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 15 / BBS in a box XV-1.iso / Files / Game / B / Bolo 0.99.6.sit / Bolo / More information / Sample Code / Std Autopilot / Brain.h < prev    next >
MacBinary  |  1995-05-10  |  7.4 KB  |  [TEXT/KAHL]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, Wed May 10 12:21:22 1995, modified Wed May 10 12:21:22 1995, creator Think C, type ASCII, 7023 bytes "Brain.h" , at 0x1bef 382 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[KAHL]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 07 42 72 61 69 6e 2e | 68 00 00 00 00 00 00 00 |..Brain.|h.......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4b 41 48 | 4c 00 00 00 00 00 00 00 |.TEXTKAH|L.......|
|00000050| 00 00 00 00 00 1b 6f 00 | 00 01 7e ab d6 98 82 ab |......o.|..~.....|
|00000060| d6 98 82 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 47 f0 00 00 |........|....G...|
|00000080| 23 69 66 64 65 66 20 5f | 5f 70 6f 77 65 72 63 0d |#ifdef _|_powerc.|
|00000090| 23 70 72 61 67 6d 61 20 | 6f 70 74 69 6f 6e 73 20 |#pragma |options |
|000000a0| 61 6c 69 67 6e 3d 6d 61 | 63 36 38 6b 0d 23 65 6e |align=ma|c68k.#en|
|000000b0| 64 69 66 0d 0d 23 64 65 | 66 69 6e 65 20 6c 6f 63 |dif..#de|fine loc|
|000000c0| 61 6c 20 73 74 61 74 69 | 63 0d 23 64 65 66 69 6e |al stati|c.#defin|
|000000d0| 65 20 65 78 70 6f 72 74 | 0d 23 64 65 66 69 6e 65 |e export|.#define|
|000000e0| 20 69 6d 70 6f 72 74 20 | 65 78 74 65 72 6e 0d 0d | import |extern..|
|000000f0| 74 79 70 65 64 65 66 20 | 75 6e 73 69 67 6e 65 64 |typedef |unsigned|
|00000100| 20 63 68 61 72 20 20 75 | 5f 63 68 61 72 3b 0d 74 | char u|_char;.t|
|00000110| 79 70 65 64 65 66 20 75 | 6e 73 69 67 6e 65 64 20 |ypedef u|nsigned |
|00000120| 73 68 6f 72 74 20 75 5f | 73 68 6f 72 74 3b 0d 74 |short u_|short;.t|
|00000130| 79 70 65 64 65 66 20 75 | 6e 73 69 67 6e 65 64 20 |ypedef u|nsigned |
|00000140| 6c 6f 6e 67 20 20 75 5f | 6c 6f 6e 67 3b 0d 0d 74 |long u_|long;..t|
|00000150| 79 70 65 64 65 66 20 75 | 5f 63 68 61 72 20 20 4e |ypedef u|_char N|
|00000160| 49 42 42 4c 45 3b 09 2f | 2f 20 74 6f 20 62 65 20 |IBBLE;./|/ to be |
|00000170| 69 6e 74 65 72 70 72 65 | 74 65 64 20 61 73 20 66 |interpre|ted as f|
|00000180| 6f 75 72 20 62 69 74 73 | 0d 74 79 70 65 64 65 66 |our bits|.typedef|
|00000190| 20 75 5f 63 68 61 72 20 | 20 42 59 54 45 3b 0d 74 | u_char | BYTE;.t|
|000001a0| 79 70 65 64 65 66 20 75 | 5f 73 68 6f 72 74 20 57 |ypedef u|_short W|
|000001b0| 4f 52 44 3b 0d 74 79 70 | 65 64 65 66 20 73 74 72 |ORD;.typ|edef str|
|000001c0| 75 63 74 20 7b 20 75 5f | 63 68 61 72 20 63 5b 33 |uct { u_|char c[3|
|000001d0| 36 5d 3b 20 7d 20 75 5f | 63 68 61 72 33 36 3b 0d |6]; } u_|char36;.|
|000001e0| 0d 74 79 70 65 64 65 66 | 20 42 59 54 45 20 4d 41 |.typedef| BYTE MA|
|000001f0| 50 5f 58 2c 20 20 20 4d | 41 50 5f 59 3b 0d 74 79 |P_X, M|AP_Y;.ty|
|00000200| 70 65 64 65 66 20 57 4f | 52 44 20 57 4f 52 4c 44 |pedef WO|RD WORLD|
|00000210| 5f 58 2c 20 57 4f 52 4c | 44 5f 59 3b 0d 0d 2f 2f |_X, WORL|D_Y;..//|
|00000220| 20 54 68 65 20 76 61 72 | 69 6f 75 73 20 61 63 63 | The var|ious acc|
|00000230| 65 73 73 69 62 6c 65 20 | 74 61 6e 6b 20 63 6f 6e |essible |tank con|
|00000240| 74 72 6f 6c 20 66 75 6e | 63 74 69 6f 6e 73 0d 65 |trol fun|ctions.e|
|00000250| 6e 75 6d 0d 09 7b 0d 09 | 4b 45 59 5f 66 61 73 74 |num..{..|KEY_fast|
|00000260| 65 72 3d 30 2c 20 4b 45 | 59 5f 73 6c 6f 77 65 72 |er=0, KE|Y_slower|
|00000270| 2c 20 4b 45 59 5f 74 75 | 72 6e 6c 65 66 74 2c 20 |, KEY_tu|rnleft, |
|00000280| 4b 45 59 5f 74 75 72 6e | 72 69 67 68 74 2c 0d 09 |KEY_turn|right,..|
|00000290| 4b 45 59 5f 6d 6f 72 65 | 72 61 6e 67 65 2c 20 4b |KEY_more|range, K|
|000002a0| 45 59 5f 6c 65 73 73 72 | 61 6e 67 65 2c 20 4b 45 |EY_lessr|ange, KE|
|000002b0| 59 5f 73 68 6f 6f 74 2c | 20 4b 45 59 5f 64 72 6f |Y_shoot,| KEY_dro|
|000002c0| 70 6d 69 6e 65 2c 0d 09 | 4b 45 59 5f 54 61 6e 6b |pmine,..|KEY_Tank|
|000002d0| 56 69 65 77 2c 20 4b 45 | 59 5f 50 69 6c 6c 56 69 |View, KE|Y_PillVi|
|000002e0| 65 77 0d 09 7d 3b 0d 23 | 64 65 66 69 6e 65 20 73 |ew..};.#|define s|
|000002f0| 65 74 6b 65 79 28 43 4f | 4e 54 52 4f 4c 56 45 43 |etkey(CO|NTROLVEC|
|00000300| 54 4f 52 2c 20 43 4f 4d | 4d 41 4e 44 29 20 43 4f |TOR, COM|MAND) CO|
|00000310| 4e 54 52 4f 4c 56 45 43 | 54 4f 52 20 7c 3d 20 28 |NTROLVEC|TOR |= (|
|00000320| 31 3c 3c 43 4f 4d 4d 41 | 4e 44 29 0d 23 64 65 66 |1<<COMMA|ND).#def|
|00000330| 69 6e 65 20 74 65 73 74 | 6b 65 79 28 43 4f 4e 54 |ine test|key(CONT|
|00000340| 52 4f 4c 56 45 43 54 4f | 52 2c 20 43 4f 4d 4d 41 |ROLVECTO|R, COMMA|
|00000350| 4e 44 29 20 28 28 43 4f | 4e 54 52 4f 4c 56 45 43 |ND) ((CO|NTROLVEC|
|00000360| 54 4f 52 20 26 20 28 31 | 3c 3c 43 4f 4d 4d 41 4e |TOR & (1|<<COMMAN|
|00000370| 44 29 29 20 21 3d 20 30 | 29 0d 0d 74 79 70 65 64 |D)) != 0|)..typed|
|00000380| 65 66 20 42 59 54 45 20 | 54 45 52 52 41 49 4e 3b |ef BYTE |TERRAIN;|
|00000390| 0d 65 6e 75 6d 0d 09 7b | 0d 09 42 55 49 4c 44 49 |.enum..{|..BUILDI|
|000003a0| 4e 47 3d 30 2c 20 52 49 | 56 45 52 2c 20 53 57 41 |NG=0, RI|VER, SWA|
|000003b0| 4d 50 2c 20 43 52 41 54 | 45 52 2c 20 52 4f 41 44 |MP, CRAT|ER, ROAD|
|000003c0| 2c 20 46 4f 52 45 53 54 | 2c 20 52 55 42 42 4c 45 |, FOREST|, RUBBLE|
|000003d0| 2c 20 47 52 41 53 53 2c | 0d 09 48 41 4c 46 42 55 |, GRASS,|..HALFBU|
|000003e0| 49 4c 44 49 4e 47 2c 20 | 42 4f 41 54 2c 20 44 45 |ILDING, |BOAT, DE|
|000003f0| 45 50 53 45 41 2c 20 52 | 45 46 42 41 53 45 5f 54 |EPSEA, R|EFBASE_T|
|00000400| 2c 20 50 49 4c 4c 42 4f | 58 5f 54 2c 0d 09 54 45 |, PILLBO|X_T,..TE|
|00000410| 52 52 41 49 4e 5f 55 4e | 4b 4e 4f 57 4e 2c 0d 09 |RRAIN_UN|KNOWN,..|
|00000420| 4e 55 4d 5f 54 45 52 52 | 41 49 4e 53 2c 0d 09 54 |NUM_TERR|AINS,..T|
|00000430| 45 52 52 41 49 4e 5f 4d | 41 53 4b 20 20 20 20 20 |ERRAIN_M|ASK |
|00000440| 3d 20 30 78 30 46 2c 0d | 09 54 45 52 52 41 49 4e |= 0x0F,.|.TERRAIN|
|00000450| 5f 54 41 4e 4b 5f 56 49 | 53 20 3d 20 30 78 31 30 |_TANK_VI|S = 0x10|
|00000460| 2c 0d 09 54 45 52 52 41 | 49 4e 5f 50 49 4c 4c 5f |,..TERRA|IN_PILL_|
|00000470| 56 49 53 20 3d 20 30 78 | 32 30 2c 0d 09 54 45 52 |VIS = 0x|20,..TER|
|00000480| 52 41 49 4e 5f 55 4e 55 | 53 45 44 20 20 20 3d 20 |RAIN_UNU|SED = |
|00000490| 30 78 34 30 2c 0d 09 54 | 45 52 52 41 49 4e 5f 4d |0x40,..T|ERRAIN_M|
|000004a0| 49 4e 45 20 20 20 20 20 | 3d 20 30 78 38 30 0d 09 |INE |= 0x80..|
|000004b0| 7d 3b 0d 0d 23 64 65 66 | 69 6e 65 20 69 73 5f 77 |};..#def|ine is_w|
|000004c0| 65 74 28 41 29 20 28 28 | 41 29 20 3d 3d 20 52 49 |et(A) ((|A) == RI|
|000004d0| 56 45 52 20 7c 7c 20 28 | 41 29 20 3d 3d 20 42 4f |VER || (|A) == BO|
|000004e0| 41 54 20 7c 7c 20 28 41 | 29 20 3d 3d 20 44 45 45 |AT || (A|) == DEE|
|000004f0| 50 53 45 41 29 0d 0d 74 | 79 70 65 64 65 66 20 42 |PSEA)..t|ypedef B|
|00000500| 59 54 45 20 42 55 49 4c | 44 4d 4f 44 45 3b 0d 65 |YTE BUIL|DMODE;.e|
|00000510| 6e 75 6d 0d 09 7b 0d 09 | 42 55 49 4c 44 4d 4f 44 |num..{..|BUILDMOD|
|00000520| 45 5f 46 41 52 4d 3d 31 | 2c 20 42 55 49 4c 44 4d |E_FARM=1|, BUILDM|
|00000530| 4f 44 45 5f 52 4f 41 44 | 2c 0d 09 42 55 49 4c 44 |ODE_ROAD|,..BUILD|
|00000540| 4d 4f 44 45 5f 42 55 49 | 4c 44 2c 20 42 55 49 4c |MODE_BUI|LD, BUIL|
|00000550| 44 4d 4f 44 45 5f 50 42 | 4f 58 2c 20 42 55 49 4c |DMODE_PB|OX, BUIL|
|00000560| 44 4d 4f 44 45 5f 4d 49 | 4e 45 0d 09 7d 3b 0d 0d |DMODE_MI|NE..};..|
|00000570| 74 79 70 65 64 65 66 20 | 73 74 72 75 63 74 0d 09 |typedef |struct..|
|00000580| 7b 0d 09 4d 41 50 5f 58 | 20 78 3b 0d 09 4d 41 50 |{..MAP_X| x;..MAP|
|00000590| 5f 59 20 79 3b 0d 09 42 | 55 49 4c 44 4d 4f 44 45 |_Y y;..B|UILDMODE|
|000005a0| 20 61 63 74 69 6f 6e 3b | 0d 09 7d 20 42 75 69 6c | action;|..} Buil|
|000005b0| 64 49 6e 66 6f 3b 0d 0d | 2f 2f 20 46 61 72 6d 69 |dInfo;..|// Farmi|
|000005c0| 6e 67 20 67 65 74 73 20 | 79 6f 75 20 34 20 74 72 |ng gets |you 4 tr|
|000005d0| 65 65 20 75 6e 69 74 73 | 2e 0d 2f 2f 20 52 6f 61 |ee units|..// Roa|
|000005e0| 64 73 2c 20 62 72 69 64 | 67 65 73 20 61 6e 64 20 |ds, brid|ges and |
|000005f0| 62 75 69 6c 64 69 6e 67 | 73 20 74 61 6b 65 20 32 |building|s take 2|
|00000600| 20 75 6e 69 74 73 2c 20 | 62 6f 61 74 73 20 74 61 | units, |boats ta|
|00000610| 6b 65 20 32 30 0d 2f 2f | 20 50 6c 61 63 69 6e 67 |ke 20.//| Placing|
|00000620| 20 61 20 70 69 6c 6c 62 | 6f 78 20 74 61 6b 65 73 | a pillb|ox takes|
|00000630| 20 34 20 75 6e 69 74 73 | 2c 20 72 65 70 61 69 72 | 4 units|, repair|
|00000640| 69 6e 67 20 74 61 6b 65 | 73 20 70 72 6f 70 6f 72 |ing take|s propor|
|00000650| 74 69 6f 6e 61 74 65 6c | 79 20 6c 65 73 73 0d 0d |tionatel|y less..|
|00000660| 23 64 65 66 69 6e 65 20 | 4e 45 55 54 52 41 4c 5f |#define |NEUTRAL_|
|00000670| 50 4c 41 59 45 52 20 30 | 78 46 46 0d 2f 2f 20 70 |PLAYER 0|xFF.// p|
|00000680| 6c 61 79 65 72 20 69 64 | 20 75 73 65 64 20 74 6f |layer id| used to|
|00000690| 20 69 64 65 6e 74 69 66 | 79 20 6e 65 75 74 72 61 | identif|y neutra|
|000006a0| 6c 20 62 61 73 65 73 20 | 61 6e 64 20 70 69 6c 6c |l bases |and pill|
|000006b0| 62 6f 78 65 73 0d 23 64 | 65 66 69 6e 65 20 46 4f |boxes.#d|efine FO|
|000006c0| 52 45 53 54 56 49 53 55 | 41 4c 20 30 78 33 30 0d |RESTVISU|AL 0x30.|
|000006d0| 23 64 65 66 69 6e 65 20 | 4d 49 4e 52 41 4e 47 45 |#define |MINRANGE|
|000006e0| 20 32 0d 23 64 65 66 69 | 6e 65 20 4d 41 58 52 41 | 2.#defi|ne MAXRA|
|000006f0| 4e 47 45 20 31 34 09 09 | 2f 2f 20 49 6e 20 48 41 |NGE 14..|// In HA|
|00000700| 4c 46 20 6d 61 70 2d 73 | 71 75 61 72 65 73 0d 23 |LF map-s|quares.#|
|00000710| 64 65 66 69 6e 65 20 4d | 41 58 5f 50 49 4c 4c 5f |define M|AX_PILL_|
|00000720| 41 52 4d 4f 55 52 20 31 | 35 0d 23 64 65 66 69 6e |ARMOUR 1|5.#defin|
|00000730| 65 20 4d 41 58 5f 42 41 | 53 45 5f 53 48 45 4c 4c |e MAX_BA|SE_SHELL|
|00000740| 53 20 39 30 0d 23 64 65 | 66 69 6e 65 20 4d 41 58 |S 90.#de|fine MAX|
|00000750| 5f 42 41 53 45 5f 4d 49 | 4e 45 53 20 20 39 30 0d |_BASE_MI|NES 90.|
|00000760| 23 64 65 66 69 6e 65 20 | 4d 41 58 5f 42 41 53 45 |#define |MAX_BASE|
|00000770| 5f 41 52 4d 4f 55 52 20 | 39 30 0d 23 64 65 66 69 |_ARMOUR |90.#defi|
|00000780| 6e 65 20 41 52 4d 4f 55 | 52 5f 43 4f 53 54 20 35 |ne ARMOU|R_COST 5|
|00000790| 0d 23 64 65 66 69 6e 65 | 20 42 41 53 45 5f 52 45 |.#define| BASE_RE|
|000007a0| 53 49 53 54 5f 53 48 45 | 4c 4c 53 20 28 41 52 4d |SIST_SHE|LLS (ARM|
|000007b0| 4f 55 52 5f 43 4f 53 54 | 29 0d 23 64 65 66 69 6e |OUR_COST|).#defin|
|000007c0| 65 20 42 41 53 45 5f 52 | 45 53 49 53 54 5f 54 41 |e BASE_R|ESIST_TA|
|000007d0| 4e 4b 53 20 28 41 52 4d | 4f 55 52 5f 43 4f 53 54 |NKS (ARM|OUR_COST|
|000007e0| 2a 32 29 0d 23 64 65 66 | 69 6e 65 20 4d 49 4e 5f |*2).#def|ine MIN_|
|000007f0| 42 41 53 45 5f 41 52 4d | 4f 55 52 20 28 42 41 53 |BASE_ARM|OUR (BAS|
|00000800| 45 5f 52 45 53 49 53 54 | 5f 54 41 4e 4b 53 20 2b |E_RESIST|_TANKS +|
|00000810| 20 41 52 4d 4f 55 52 5f | 43 4f 53 54 20 2d 20 31 | ARMOUR_|COST - 1|
|00000820| 29 0d 2f 2f 20 41 20 62 | 61 73 65 20 62 75 73 74 |).// A b|ase bust|
|00000830| 20 68 61 76 65 20 6f 6e | 65 20 61 72 6d 6f 75 72 | have on|e armour|
|00000840| 20 75 6e 69 74 20 6f 72 | 20 6d 6f 72 65 20 74 6f | unit or| more to|
|00000850| 20 72 65 73 69 73 74 20 | 61 20 73 68 65 6c 6c 20 | resist |a shell |
|00000860| 2d 2d 0d 2f 2f 20 6f 74 | 68 65 72 77 69 73 65 20 |--.// ot|herwise |
|00000870| 69 74 20 69 73 20 27 74 | 72 61 6e 73 70 61 72 65 |it is 't|ranspare|
|00000880| 6e 74 27 20 74 6f 20 73 | 68 65 6c 6c 73 2e 0d 2f |nt' to s|hells../|
|00000890| 2f 20 49 74 20 6d 75 73 | 74 20 68 61 76 65 20 74 |/ It mus|t have t|
|000008a0| 77 6f 20 61 72 6d 6f 75 | 72 20 75 6e 69 74 73 20 |wo armou|r units |
|000008b0| 74 6f 20 6f 72 20 6d 6f | 72 65 20 72 65 73 69 73 |to or mo|re resis|
|000008c0| 74 20 61 20 74 61 6e 6b | 2e 0d 2f 2f 20 54 68 69 |t a tank|..// Thi|
|000008d0| 73 20 69 73 20 73 6f 20 | 74 68 61 74 2c 20 61 66 |s is so |that, af|
|000008e0| 74 65 72 20 73 68 6f 6f | 74 69 6e 67 20 61 20 62 |ter shoo|ting a b|
|000008f0| 61 73 65 20 64 6f 77 6e | 20 74 6f 20 27 74 72 61 |ase down| to 'tra|
|00000900| 6e 73 70 61 72 65 6e 63 | 79 27 2c 0d 2f 2f 20 74 |nsparenc|y',.// t|
|00000910| 68 65 72 65 20 69 73 20 | 73 6f 6d 65 20 72 65 61 |here is |some rea|
|00000920| 73 6f 6e 62 6c 65 20 74 | 69 6d 65 20 77 69 6e 64 |sonble t|ime wind|
|00000930| 6f 77 20 69 6e 20 77 68 | 69 63 68 20 74 6f 20 64 |ow in wh|ich to d|
|00000940| 72 69 76 65 20 6f 6e 74 | 6f 20 69 74 2e 0d 0d 74 |rive ont|o it...t|
|00000950| 79 70 65 64 65 66 20 75 | 5f 6c 6f 6e 67 20 50 6c |ypedef u|_long Pl|
|00000960| 61 79 65 72 42 69 74 4d | 61 70 3b 0d 0d 74 79 70 |ayerBitM|ap;..typ|
|00000970| 65 64 65 66 20 73 74 72 | 75 63 74 20 7b 20 75 5f |edef str|uct { u_|
|00000980| 6c 6f 6e 67 20 6d 61 63 | 68 69 6e 65 69 64 3b 20 |long mac|hineid; |
|00000990| 75 5f 6c 6f 6e 67 20 74 | 69 6d 65 73 74 61 6d 70 |u_long t|imestamp|
|000009a0| 3b 20 7d 20 47 41 4d 45 | 49 44 3b 0d 0d 65 6e 75 |; } GAME|ID;..enu|
|000009b0| 6d 20 7b 20 47 61 6d 65 | 54 79 70 65 5f 6f 70 65 |m { Game|Type_ope|
|000009c0| 6e 3d 31 2c 20 47 61 6d | 65 54 79 70 65 5f 74 6f |n=1, Gam|eType_to|
|000009d0| 75 72 6e 61 6d 65 6e 74 | 2c 20 47 61 6d 65 54 79 |urnament|, GameTy|
|000009e0| 70 65 5f 73 74 72 69 63 | 74 5f 74 6d 65 6e 74 20 |pe_stric|t_tment |
|000009f0| 7d 3b 0d 0d 23 64 65 66 | 69 6e 65 20 47 41 4d 45 |};..#def|ine GAME|
|00000a00| 49 4e 46 4f 5f 48 49 44 | 44 45 4e 4d 49 4e 45 53 |INFO_HID|DENMINES|
|00000a10| 20 30 78 38 30 0d 23 64 | 65 66 69 6e 65 20 47 41 | 0x80.#d|efine GA|
|00000a20| 4d 45 49 4e 46 4f 5f 41 | 4c 4c 4d 49 4e 45 53 5f |MEINFO_A|LLMINES_|
|00000a30| 56 49 53 49 42 4c 45 20 | 30 78 43 30 0d 0d 74 79 |VISIBLE |0xC0..ty|
|00000a40| 70 65 64 65 66 20 73 74 | 72 75 63 74 0d 09 7b 0d |pedef st|ruct..{.|
|00000a50| 09 75 5f 63 68 61 72 33 | 36 20 6d 61 70 6e 61 6d |.u_char3|6 mapnam|
|00000a60| 65 3b 0d 09 47 41 4d 45 | 49 44 20 67 61 6d 65 69 |e;..GAME|ID gamei|
|00000a70| 64 3b 0d 09 42 59 54 45 | 20 67 61 6d 65 74 79 70 |d;..BYTE| gametyp|
|00000a80| 65 3b 0d 09 42 59 54 45 | 20 68 69 64 64 65 6e 5f |e;..BYTE| hidden_|
|00000a90| 6d 69 6e 65 73 3b 0d 09 | 2f 2f 20 68 61 73 20 74 |mines;..|// has t|
|00000aa0| 68 65 20 76 61 6c 75 65 | 20 47 41 4d 45 49 4e 46 |he value| GAMEINF|
|00000ab0| 4f 5f 48 49 44 44 45 4e | 4d 49 4e 45 53 20 6f 72 |O_HIDDEN|MINES or|
|00000ac0| 20 47 41 4d 45 49 4e 46 | 4f 5f 41 4c 4c 4d 49 4e | GAMEINF|O_ALLMIN|
|00000ad0| 45 53 5f 56 49 53 49 42 | 4c 45 0d 09 42 59 54 45 |ES_VISIB|LE..BYTE|
|00000ae0| 20 61 6c 6c 6f 77 5f 41 | 49 3b 0d 09 42 59 54 45 | allow_A|I;..BYTE|
|00000af0| 20 61 73 73 69 73 74 5f | 41 49 3b 0d 09 6c 6f 6e | assist_|AI;..lon|
|00000b00| 67 20 73 74 61 72 74 5f | 64 65 6c 61 79 3b 0d 09 |g start_|delay;..|
|00000b10| 6c 6f 6e 67 20 74 69 6d | 65 5f 6c 69 6d 69 74 3b |long tim|e_limit;|
|00000b20| 0d 09 7d 20 47 41 4d 45 | 49 4e 46 4f 3b 0d 0d 2f |..} GAME|INFO;../|
|00000b30| 2f 20 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |/ ******|********|
|00000b40| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000b50| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000b60| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00000b70| 2a 2a 2a 2a 2a 2a 2a 0d | 0d 74 79 70 65 64 65 66 |*******.|.typedef|
|00000b80| 20 75 5f 73 68 6f 72 74 | 20 4f 42 4a 45 43 54 3b | u_short| OBJECT;|
|00000b90| 0d 65 6e 75 6d 0d 09 7b | 0d 09 4f 42 4a 45 43 54 |.enum..{|..OBJECT|
|00000ba0| 5f 54 41 4e 4b 3d 30 2c | 0d 09 4f 42 4a 45 43 54 |_TANK=0,|..OBJECT|
|00000bb0| 5f 53 48 4f 54 2c 0d 09 | 4f 42 4a 45 43 54 5f 50 |_SHOT,..|OBJECT_P|
|00000bc0| 49 4c 4c 42 4f 58 2c 0d | 09 4f 42 4a 45 43 54 5f |ILLBOX,.|.OBJECT_|
|00000bd0| 52 45 46 42 41 53 45 2c | 0d 09 4f 42 4a 45 43 54 |REFBASE,|..OBJECT|
|00000be0| 5f 42 55 49 4c 44 4d 41 | 4e 2c 0d 09 4f 42 4a 45 |_BUILDMA|N,..OBJE|
|00000bf0| 43 54 5f 50 41 52 41 43 | 48 55 54 45 0d 09 7d 3b |CT_PARAC|HUTE..};|
|00000c00| 0d 0d 23 64 65 66 69 6e | 65 20 4f 42 4a 45 43 54 |..#defin|e OBJECT|
|00000c10| 5f 48 4f 53 54 49 4c 45 | 20 31 09 2f 2f 20 4f 62 |_HOSTILE| 1.// Ob|
|00000c20| 6a 65 63 74 20 69 73 20 | 68 6f 73 74 69 6c 65 20 |ject is |hostile |
|00000c30| 74 6f 20 75 73 0d 23 64 | 65 66 69 6e 65 20 4f 42 |to us.#d|efine OB|
|00000c40| 4a 45 43 54 5f 4e 45 55 | 54 52 41 4c 20 32 09 2f |JECT_NEU|TRAL 2./|
|00000c50| 2f 20 4f 62 6a 65 63 74 | 20 69 73 20 6e 6f 74 20 |/ Object| is not |
|00000c60| 6c 6f 79 61 6c 20 74 6f | 20 61 6e 79 20 6f 74 68 |loyal to| any oth|
|00000c70| 65 72 20 70 6c 61 79 65 | 72 0d 2f 2f 20 4e 6f 74 |er playe|r.// Not|
|00000c80| 65 20 74 68 61 74 20 62 | 65 69 6e 67 20 6e 65 75 |e that b|eing neu|
|00000c90| 74 72 61 6c 20 6d 65 61 | 6e 73 20 74 68 61 74 20 |tral mea|ns that |
|00000ca0| 61 6e 20 6f 62 6a 65 63 | 74 20 68 61 73 20 6e 6f |an objec|t has no|
|00000cb0| 20 70 61 72 74 69 63 75 | 6c 61 72 20 6c 6f 79 61 | particu|lar loya|
|00000cc0| 6c 74 79 0d 2f 2f 20 74 | 6f 20 61 6e 79 20 70 6c |lty.// t|o any pl|
|00000cd0| 61 79 65 72 20 2d 2d 20 | 77 68 65 74 68 65 72 20 |ayer -- |whether |
|00000ce0| 69 74 20 69 73 20 68 6f | 73 74 69 6c 65 20 6f 72 |it is ho|stile or|
|00000cf0| 20 66 72 69 65 6e 64 6c | 79 20 74 6f 20 75 73 20 | friendl|y to us |
|00000d00| 69 73 20 61 6e 20 6f 72 | 74 68 6f 67 6f 6e 61 6c |is an or|thogonal|
|00000d10| 0d 2f 2f 20 71 75 65 73 | 74 69 6f 6e 2e 20 43 75 |.// ques|tion. Cu|
|00000d20| 72 72 65 6e 74 6c 79 2c | 20 6e 65 75 74 72 61 6c |rrently,| neutral|
|00000d30| 20 72 65 66 75 65 6c 6c | 69 6e 67 20 62 61 73 65 | refuell|ing base|
|00000d40| 73 20 61 72 65 20 66 72 | 69 65 6e 64 6c 79 20 74 |s are fr|iendly t|
|00000d50| 6f 20 65 76 65 72 79 6f | 6e 65 0d 2f 2f 20 61 6e |o everyo|ne.// an|
|00000d60| 64 20 6e 65 75 74 72 61 | 6c 20 70 69 6c 6c 62 6f |d neutra|l pillbo|
|00000d70| 78 65 73 20 61 72 65 20 | 68 6f 73 74 69 6c 65 20 |xes are |hostile |
|00000d80| 74 6f 20 65 76 65 72 79 | 6f 6e 65 2e 0d 0d 74 79 |to every|one...ty|
|00000d90| 70 65 64 65 66 20 73 74 | 72 75 63 74 0d 09 7b 0d |pedef st|ruct..{.|
|00000da0| 09 4f 42 4a 45 43 54 20 | 6f 62 6a 65 63 74 3b 0d |.OBJECT |object;.|
|00000db0| 09 57 4f 52 4c 44 5f 58 | 20 78 3b 0d 09 57 4f 52 |.WORLD_X| x;..WOR|
|00000dc0| 4c 44 5f 59 20 79 3b 0d | 09 57 4f 52 44 20 69 64 |LD_Y y;.|.WORD id|
|00000dd0| 6e 75 6d 3b 0d 09 42 59 | 54 45 20 64 69 72 65 63 |num;..BY|TE direc|
|00000de0| 74 69 6f 6e 3b 0d 09 42 | 59 54 45 20 69 6e 66 6f |tion;..B|YTE info|
|00000df0| 3b 0d 09 7d 20 4f 62 6a | 65 63 74 49 6e 66 6f 3b |;..} Obj|ectInfo;|
|00000e00| 0d 0d 2f 2f 20 46 6f 72 | 20 70 69 6c 6c 62 6f 78 |..// For| pillbox|
|00000e10| 65 73 20 61 6e 64 20 72 | 65 66 75 65 6c 6c 69 6e |es and r|efuellin|
|00000e20| 67 20 62 61 73 65 73 2c | 20 74 68 65 20 27 64 69 |g bases,| the 'di|
|00000e30| 72 65 63 74 69 6f 6e 27 | 20 66 69 65 6c 64 0d 2f |rection'| field./|
|00000e40| 2f 20 61 63 74 75 61 6c | 6c 79 20 68 6f 6c 64 73 |/ actual|ly holds|
|00000e50| 20 74 68 65 20 61 72 6d | 6f 75 72 20 73 74 72 65 | the arm|our stre|
|00000e60| 6e 67 74 68 0d 23 64 65 | 66 69 6e 65 20 70 69 6c |ngth.#de|fine pil|
|00000e70| 6c 62 6f 78 5f 73 74 72 | 65 6e 67 74 68 20 64 69 |lbox_str|ength di|
|00000e80| 72 65 63 74 69 6f 6e 0d | 23 64 65 66 69 6e 65 20 |rection.|#define |
|00000e90| 72 65 66 62 61 73 65 5f | 73 74 72 65 6e 67 74 68 |refbase_|strength|
|00000ea0| 20 64 69 72 65 63 74 69 | 6f 6e 0d 0d 74 79 70 65 | directi|on..type|
|00000eb0| 64 65 66 20 73 74 72 75 | 63 74 0d 09 7b 0d 09 75 |def stru|ct..{..u|
|00000ec0| 5f 73 68 6f 72 74 20 73 | 65 6e 64 65 72 3b 0d 09 |_short s|ender;..|
|00000ed0| 50 6c 61 79 65 72 42 69 | 74 4d 61 70 20 2a 72 65 |PlayerBi|tMap *re|
|00000ee0| 63 65 69 76 65 72 73 3b | 0d 09 75 5f 63 68 61 72 |ceivers;|..u_char|
|00000ef0| 20 2a 6d 65 73 73 61 67 | 65 3b 0d 09 7d 20 4d 65 | *messag|e;..} Me|
|00000f00| 73 73 61 67 65 49 6e 66 | 6f 3b 0d 0d 2f 2f 20 54 |ssageInf|o;..// T|
|00000f10| 68 69 73 20 68 65 61 64 | 65 72 20 66 69 6c 65 20 |his head|er file |
|00000f20| 64 65 73 63 72 69 62 65 | 73 20 42 6f 6c 6f 20 42 |describe|s Bolo B|
|00000f30| 72 61 69 6e 49 6e 66 6f | 20 73 74 72 75 63 74 75 |rainInfo| structu|
|00000f40| 72 65 20 76 65 72 73 69 | 6f 6e 20 33 0d 23 64 65 |re versi|on 3.#de|
|00000f50| 66 69 6e 65 20 43 55 52 | 52 45 4e 54 5f 42 52 41 |fine CUR|RENT_BRA|
|00000f60| 49 4e 49 4e 46 4f 5f 56 | 45 52 53 49 4f 4e 20 33 |ININFO_V|ERSION 3|
|00000f70| 0d 0d 65 6e 75 6d 20 7b | 20 42 52 41 49 4e 5f 4f |..enum {| BRAIN_O|
|00000f80| 50 45 4e 3d 30 2c 20 42 | 52 41 49 4e 5f 43 4c 4f |PEN=0, B|RAIN_CLO|
|00000f90| 53 45 2c 20 42 52 41 49 | 4e 5f 54 48 49 4e 4b 2c |SE, BRAI|N_THINK,|
|00000fa0| 20 42 52 41 49 4e 5f 4d | 45 4e 55 3d 32 30 30 20 | BRAIN_M|ENU=200 |
|00000fb0| 7d 3b 0d 0d 74 79 70 65 | 64 65 66 20 73 74 72 75 |};..type|def stru|
|00000fc0| 63 74 0d 09 7b 0d 09 75 | 5f 73 68 6f 72 74 20 42 |ct..{..u|_short B|
|00000fd0| 6f 6c 6f 56 65 72 73 69 | 6f 6e 3b 09 2f 2f 20 74 |oloVersi|on;.// t|
|00000fe0| 77 6f 20 68 65 78 20 62 | 79 74 65 73 2c 20 65 67 |wo hex b|ytes, eg|
|00000ff0| 2e 20 30 78 30 30 39 38 | 20 6d 65 61 6e 73 20 76 |. 0x0098| means v|
|00001000| 65 72 73 69 6f 6e 20 30 | 2e 39 38 0d 09 75 5f 73 |ersion 0|.98..u_s|
|00001010| 68 6f 72 74 20 49 6e 66 | 6f 56 65 72 73 69 6f 6e |hort Inf|oVersion|
|00001020| 3b 09 2f 2f 20 63 75 72 | 72 65 6e 74 20 76 65 72 |;.// cur|rent ver|
|00001030| 73 69 6f 6e 20 6f 66 20 | 74 68 65 20 42 72 61 69 |sion of |the Brai|
|00001040| 6e 49 6e 66 6f 20 73 74 | 72 75 63 74 75 72 65 20 |nInfo st|ructure |
|00001050| 69 73 20 31 0d 09 76 6f | 69 64 20 20 20 2a 75 73 |is 1..vo|id *us|
|00001060| 65 72 64 61 74 61 3b 09 | 09 2f 2f 20 49 6e 69 74 |erdata;.|.// Init|
|00001070| 69 61 6c 6c 79 20 70 6f | 69 6e 74 73 20 74 6f 20 |ially po|ints to |
|00001080| 61 64 64 72 65 73 73 20 | 6f 66 20 79 6f 75 72 20 |address |of your |
|00001090| 43 4f 44 45 20 72 65 73 | 6f 75 72 63 65 0d 09 75 |CODE res|ource..u|
|000010a0| 5f 73 68 6f 72 74 20 50 | 72 65 66 73 56 52 65 66 |_short P|refsVRef|
|000010b0| 4e 75 6d 3b 0d 09 75 5f | 63 68 61 72 20 2a 50 72 |Num;..u_|char *Pr|
|000010c0| 65 66 73 46 69 6c 65 4e | 61 6d 65 3b 0d 09 75 5f |efsFileN|ame;..u_|
|000010d0| 73 68 6f 72 74 20 6f 70 | 65 72 61 74 69 6f 6e 3b |short op|eration;|
|000010e0| 09 09 2f 2f 20 30 3d 4f | 50 45 4e 2c 20 31 3d 43 |..// 0=O|PEN, 1=C|
|000010f0| 4c 4f 53 45 2c 20 32 3d | 54 48 49 4e 4b 2c 20 32 |LOSE, 2=|THINK, 2|
|00001100| 30 30 2b 20 6d 65 6e 75 | 0d 09 75 5f 73 68 6f 72 |00+ menu|..u_shor|
|00001110| 74 20 6d 65 6e 75 5f 69 | 74 65 6d 3b 0d 0d 09 2f |t menu_i|tem;.../|
|00001120| 2f 20 49 6e 74 65 72 66 | 61 63 65 20 70 72 6f 76 |/ Interf|ace prov|
|00001130| 69 64 69 6e 67 20 69 6e | 66 6f 72 6d 61 74 69 6f |iding in|formatio|
|00001140| 6e 20 61 62 6f 75 74 20 | 74 68 65 20 42 6f 6c 6f |n about |the Bolo|
|00001150| 20 77 6f 72 6c 64 0d 09 | 0d 09 75 5f 73 68 6f 72 | world..|..u_shor|
|00001160| 74 20 6d 61 78 5f 70 6c | 61 79 65 72 73 3b 09 2f |t max_pl|ayers;./|
|00001170| 2f 20 50 6c 61 79 65 72 | 73 20 61 72 65 20 6e 75 |/ Player|s are nu|
|00001180| 6d 62 65 72 65 64 20 66 | 72 6f 6d 20 30 20 74 6f |mbered f|rom 0 to|
|00001190| 20 6d 61 78 5f 70 6c 61 | 79 65 72 73 2d 31 0d 09 | max_pla|yers-1..|
|000011a0| 75 5f 73 68 6f 72 74 20 | 6d 61 78 5f 70 69 6c 6c |u_short |max_pill|
|000011b0| 62 6f 78 65 73 3b 09 2f | 2f 20 50 69 6c 6c 62 6f |boxes;./|/ Pillbo|
|000011c0| 78 65 73 20 61 72 65 20 | 6e 75 6d 62 65 72 65 64 |xes are |numbered|
|000011d0| 20 66 72 6f 6d 20 30 20 | 74 6f 20 6d 61 78 5f 70 | from 0 |to max_p|
|000011e0| 69 6c 6c 62 6f 78 65 73 | 2d 31 0d 09 75 5f 73 68 |illboxes|-1..u_sh|
|000011f0| 6f 72 74 20 6d 61 78 5f | 72 65 66 62 61 73 65 73 |ort max_|refbases|
|00001200| 3b 09 2f 2f 20 42 61 73 | 65 73 20 61 72 65 20 6e |;.// Bas|es are n|
|00001210| 75 6d 62 65 72 65 64 20 | 66 72 6f 6d 20 30 20 74 |umbered |from 0 t|
|00001220| 6f 20 6d 61 78 5f 72 65 | 66 62 61 73 65 73 2d 31 |o max_re|fbases-1|
|00001230| 0d 09 75 5f 73 68 6f 72 | 74 20 70 6c 61 79 65 72 |..u_shor|t player|
|00001240| 5f 6e 75 6d 62 65 72 3b | 09 2f 2f 20 57 68 6f 20 |_number;|.// Who |
|00001250| 41 6d 20 49 3f 0d 09 75 | 5f 73 68 6f 72 74 20 6e |Am I?..u|_short n|
|00001260| 75 6d 5f 70 6c 61 79 65 | 72 73 3b 09 2f 2f 20 48 |um_playe|rs;.// H|
|00001270| 6f 77 20 6d 61 6e 79 20 | 70 6c 61 79 65 72 73 20 |ow many |players |
|00001280| 63 75 72 72 65 6e 74 6c | 79 20 61 63 74 69 76 65 |currentl|y active|
|00001290| 20 69 6e 20 74 68 69 73 | 20 67 61 6d 65 3f 0d 09 | in this| game?..|
|000012a0| 75 5f 63 68 61 72 33 36 | 20 2a 2a 70 6c 61 79 65 |u_char36| **playe|
|000012b0| 72 6e 61 6d 65 73 3b 09 | 2f 2f 20 41 72 72 61 79 |rnames;.|// Array|
|000012c0| 20 6f 66 20 70 6f 69 6e | 74 65 72 73 20 74 6f 20 | of poin|ters to |
|000012d0| 70 61 73 63 61 6c 20 73 | 74 72 69 6e 67 73 0d 09 |pascal s|trings..|
|000012e0| 50 6c 61 79 65 72 42 69 | 74 4d 61 70 20 2a 61 6c |PlayerBi|tMap *al|
|000012f0| 6c 69 65 73 3b 09 2f 2f | 20 57 68 6f 20 79 6f 75 |lies;.//| Who you|
|00001300| 20 61 72 65 20 63 75 72 | 72 65 6e 74 6c 79 20 61 | are cur|rently a|
|00001310| 6c 6c 69 65 64 20 74 6f | 0d 0d 09 57 4f 52 4c 44 |llied to|...WORLD|
|00001320| 5f 58 20 74 61 6e 6b 78 | 3b 0d 09 57 4f 52 4c 44 |_X tankx|;..WORLD|
|00001330| 5f 59 20 74 61 6e 6b 79 | 3b 0d 09 0d 09 42 59 54 |_Y tanky|;....BYT|
|00001340| 45 20 64 69 72 65 63 74 | 69 6f 6e 3b 0d 09 42 59 |E direct|ion;..BY|
|00001350| 54 45 20 73 70 65 65 64 | 3b 09 09 09 09 2f 2f 20 |TE speed|;....// |
|00001360| 36 34 20 69 73 20 74 6f | 70 20 73 70 65 65 64 20 |64 is to|p speed |
|00001370| 6f 6e 20 72 6f 61 64 2c | 20 34 38 20 6f 6e 20 67 |on road,| 48 on g|
|00001380| 72 61 73 73 2c 0d 09 09 | 09 09 09 09 09 2f 2f 20 |rass,...|.....// |
|00001390| 32 34 20 69 6e 20 66 6f | 72 65 73 74 2c 20 31 32 |24 in fo|rest, 12|
|000013a0| 20 6f 6e 20 72 75 62 62 | 6c 65 2c 20 63 72 61 74 | on rubb|le, crat|
|000013b0| 65 72 2c 20 77 61 74 65 | 72 20 65 74 63 2e 0d 09 |er, wate|r etc...|
|000013c0| 42 59 54 45 20 69 6e 62 | 6f 61 74 3b 09 09 09 2f |BYTE inb|oat;.../|
|000013d0| 2f 20 6e 6f 6e 2d 7a 65 | 72 6f 20 6d 65 61 6e 73 |/ non-ze|ro means|
|000013e0| 20 63 75 72 72 65 6e 74 | 6c 79 20 6f 6e 20 62 6f | current|ly on bo|
|000013f0| 61 74 0d 09 42 59 54 45 | 20 68 69 64 64 65 6e 3b |at..BYTE| hidden;|
|00001400| 09 09 09 2f 2f 20 6e 6f | 6e 2d 7a 65 72 6f 20 6d |...// no|n-zero m|
|00001410| 65 61 6e 73 20 68 69 64 | 64 65 6e 20 69 6e 73 69 |eans hid|den insi|
|00001420| 64 65 20 66 6f 72 65 73 | 74 0d 0d 09 42 59 54 45 |de fores|t...BYTE|
|00001430| 20 73 68 65 6c 6c 73 3b | 09 09 09 2f 2f 20 52 61 | shells;|...// Ra|
|00001440| 6e 67 65 20 30 2d 34 30 | 0d 09 42 59 54 45 20 6d |nge 0-40|..BYTE m|
|00001450| 69 6e 65 73 3b 09 09 09 | 09 2f 2f 20 52 61 6e 67 |ines;...|.// Rang|
|00001460| 65 20 30 2d 34 30 0d 09 | 42 59 54 45 20 61 72 6d |e 0-40..|BYTE arm|
|00001470| 6f 75 72 3b 09 09 09 2f | 2f 20 52 61 6e 67 65 20 |our;.../|/ Range |
|00001480| 30 2d 38 0d 09 42 59 54 | 45 20 74 72 65 65 73 3b |0-8..BYT|E trees;|
|00001490| 09 09 09 09 2f 2f 20 52 | 61 6e 67 65 20 30 2d 34 |....// R|ange 0-4|
|000014a0| 30 0d 0d 09 42 59 54 45 | 20 63 61 72 72 69 65 64 |0...BYTE| carried|
|000014b0| 70 69 6c 6c 73 3b 09 09 | 2f 2f 20 4e 75 6d 62 65 |pills;..|// Numbe|
|000014c0| 72 20 6f 66 20 70 69 6c | 6c 62 6f 78 65 73 20 74 |r of pil|lboxes t|
|000014d0| 68 65 20 74 61 6e 6b 20 | 69 73 20 63 61 72 72 79 |he tank |is carry|
|000014e0| 69 6e 67 0d 09 42 59 54 | 45 20 63 61 72 72 69 65 |ing..BYT|E carrie|
|000014f0| 64 62 61 73 65 73 3b 09 | 09 2f 2f 20 4e 75 6d 62 |dbases;.|.// Numb|
|00001500| 65 72 20 6f 66 20 72 65 | 66 75 65 6c 6c 69 6e 67 |er of re|fuelling|
|00001510| 20 62 61 73 65 73 20 28 | 7a 65 72 6f 20 69 6e 20 | bases (|zero in |
|00001520| 63 75 72 72 65 6e 74 20 | 76 65 72 73 69 6f 6e 73 |current |versions|
|00001530| 29 0d 09 57 4f 52 44 20 | 70 61 64 64 69 6e 67 32 |)..WORD |padding2|
|00001540| 3b 0d 0d 09 42 59 54 45 | 20 67 75 6e 72 61 6e 67 |;...BYTE| gunrang|
|00001550| 65 3b 09 09 09 2f 2f 20 | 69 6e 20 75 6e 69 74 73 |e;...// |in units|
|00001560| 20 6f 66 20 68 61 6c 66 | 20 6d 61 70 20 73 71 75 | of half| map squ|
|00001570| 61 72 65 73 0d 09 42 59 | 54 45 20 72 65 6c 6f 61 |ares..BY|TE reloa|
|00001580| 64 3b 09 09 09 2f 2f 20 | 6e 6f 6e 2d 7a 65 72 6f |d;...// |non-zero|
|00001590| 20 6d 65 61 6e 73 20 63 | 61 6e 6e 6f 74 20 66 69 | means c|annot fi|
|000015a0| 72 65 20 73 68 65 6c 6c | 20 69 6d 6d 65 64 69 61 |re shell| immedia|
|000015b0| 74 65 6c 79 0d 09 42 59 | 54 45 20 6e 65 77 74 61 |tely..BY|TE newta|
|000015c0| 6e 6b 3b 09 09 09 2f 2f | 20 53 65 74 20 69 6e 69 |nk;...//| Set ini|
|000015d0| 74 69 61 6c 6c 79 2c 20 | 61 6e 64 20 65 61 63 68 |tially, |and each|
|000015e0| 20 74 69 6d 65 20 74 61 | 6e 6b 20 69 73 20 6b 69 | time ta|nk is ki|
|000015f0| 6c 6c 65 64 0d 09 42 59 | 54 45 20 74 61 6e 6b 6f |lled..BY|TE tanko|
|00001600| 62 73 74 72 75 63 74 65 | 64 3b 09 2f 2f 20 53 65 |bstructe|d;.// Se|
|00001610| 74 20 69 66 20 74 61 6e | 6b 20 68 61 73 20 68 69 |t if tan|k has hi|
|00001620| 74 20 6f 62 73 74 61 63 | 6c 65 0d 09 0d 09 4f 62 |t obstac|le....Ob|
|00001630| 6a 65 63 74 49 6e 66 6f | 20 2a 62 61 73 65 3b 09 |jectInfo| *base;.|
|00001640| 09 2f 2f 20 77 69 6c 6c | 20 62 65 20 4e 55 4c 4c |.// will| be NULL|
|00001650| 20 69 66 20 6e 6f 20 66 | 72 69 65 6e 64 6c 79 20 | if no f|riendly |
|00001660| 62 61 73 65 20 6e 65 61 | 72 62 79 0d 09 42 59 54 |base nea|rby..BYT|
|00001670| 45 20 62 61 73 65 5f 73 | 68 65 6c 6c 73 3b 0d 09 |E base_s|hells;..|
|00001680| 42 59 54 45 20 62 61 73 | 65 5f 6d 69 6e 65 73 3b |BYTE bas|e_mines;|
|00001690| 0d 09 42 59 54 45 20 62 | 61 73 65 5f 61 72 6d 6f |..BYTE b|ase_armo|
|000016a0| 75 72 3b 0d 09 42 59 54 | 45 20 70 61 64 64 69 6e |ur;..BYT|E paddin|
|000016b0| 67 33 3b 09 09 09 2f 2f | 20 75 6e 75 73 65 64 20 |g3;...//| unused |
|000016c0| 61 74 20 70 72 65 73 65 | 6e 74 0d 0d 09 42 59 54 |at prese|nt...BYT|
|000016d0| 45 20 6d 61 6e 5f 73 74 | 61 74 75 73 3b 09 09 2f |E man_st|atus;../|
|000016e0| 2f 20 30 20 3d 20 69 6e | 20 74 61 6e 6b 2c 20 31 |/ 0 = in| tank, 1|
|000016f0| 20 3d 20 64 65 61 64 2c | 20 6f 74 68 65 72 20 3d | = dead,| other =|
|00001700| 20 6f 75 74 73 69 64 65 | 0d 09 42 59 54 45 20 6d | outside|..BYTE m|
|00001710| 61 6e 5f 64 69 72 65 63 | 74 69 6f 6e 3b 0d 09 57 |an_direc|tion;..W|
|00001720| 4f 52 4c 44 5f 58 20 6d | 61 6e 5f 78 3b 0d 09 57 |ORLD_X m|an_x;..W|
|00001730| 4f 52 4c 44 5f 59 20 6d | 61 6e 5f 79 3b 0d 09 42 |ORLD_Y m|an_y;..B|
|00001740| 59 54 45 20 6d 61 6e 6f | 62 73 74 72 75 63 74 65 |YTE mano|bstructe|
|00001750| 64 3b 09 09 2f 2f 20 30 | 20 3d 20 66 72 65 65 2c |d;..// 0| = free,|
|00001760| 20 31 20 3d 20 74 6f 75 | 63 68 69 6e 67 20 77 61 | 1 = tou|ching wa|
|00001770| 6c 6c 2c 20 32 20 3d 20 | 63 6f 6d 70 6c 65 74 65 |ll, 2 = |complete|
|00001780| 6c 79 20 73 74 75 63 6b | 0d 09 42 59 54 45 20 70 |ly stuck|..BYTE p|
|00001790| 61 64 64 69 6e 67 34 3b | 09 09 09 2f 2f 20 75 6e |adding4;|...// un|
|000017a0| 75 73 65 64 20 61 74 20 | 70 72 65 73 65 6e 74 0d |used at |present.|
|000017b0| 0d 09 57 4f 52 44 20 2a | 70 69 6c 6c 76 69 65 77 |..WORD *|pillview|
|000017c0| 3b 09 09 09 2f 2f 20 74 | 6f 70 20 62 69 74 20 73 |;...// t|op bit s|
|000017d0| 65 74 20 28 30 78 38 30 | 30 30 29 20 6d 65 61 6e |et (0x80|00) mean|
|000017e0| 73 20 76 69 65 77 20 69 | 73 20 66 72 6f 6d 20 74 |s view i|s from t|
|000017f0| 61 6e 6b 0d 09 4d 41 50 | 5f 59 20 76 69 65 77 5f |ank..MAP|_Y view_|
|00001800| 74 6f 70 3b 09 09 09 2f | 2f 20 63 6f 6f 72 64 69 |top;.../|/ coordi|
|00001810| 6e 61 74 65 20 6f 66 20 | 74 6f 70 6d 6f 73 74 20 |nate of |topmost |
|00001820| 73 71 75 61 72 65 20 6f | 66 20 63 75 72 72 65 6e |square o|f curren|
|00001830| 74 20 76 69 65 77 0d 09 | 4d 41 50 5f 58 20 76 69 |t view..|MAP_X vi|
|00001840| 65 77 5f 6c 65 66 74 3b | 09 09 2f 2f 20 63 6f 6f |ew_left;|..// coo|
|00001850| 72 64 69 6e 61 74 65 20 | 6f 66 20 6c 65 66 74 6d |rdinate |of leftm|
|00001860| 6f 73 74 20 73 71 75 61 | 72 65 20 6f 66 20 63 75 |ost squa|re of cu|
|00001870| 72 72 65 6e 74 20 76 69 | 65 77 0d 09 42 59 54 45 |rrent vi|ew..BYTE|
|00001880| 20 20 76 69 65 77 5f 68 | 65 69 67 68 74 3b 09 09 | view_h|eight;..|
|00001890| 2f 2f 20 68 65 69 67 68 | 74 20 6f 66 20 74 68 65 |// heigh|t of the|
|000018a0| 20 76 69 65 77 2c 20 69 | 6e 20 6d 61 70 20 73 71 | view, i|n map sq|
|000018b0| 75 61 72 65 73 0d 09 42 | 59 54 45 20 20 76 69 65 |uares..B|YTE vie|
|000018c0| 77 5f 77 69 64 74 68 3b | 09 09 2f 2f 20 77 69 64 |w_width;|..// wid|
|000018d0| 74 68 20 6f 66 20 74 68 | 65 20 76 69 65 77 2c 20 |th of th|e view, |
|000018e0| 69 6e 20 6d 61 70 20 73 | 71 75 61 72 65 73 0d 09 |in map s|quares..|
|000018f0| 54 45 52 52 41 49 4e 20 | 2a 76 69 65 77 64 61 74 |TERRAIN |*viewdat|
|00001900| 61 3b 09 09 2f 2f 20 76 | 69 65 77 5f 77 69 64 74 |a;..// v|iew_widt|
|00001910| 68 2a 76 69 65 77 5f 68 | 65 69 67 68 74 20 62 79 |h*view_h|eight by|
|00001920| 74 65 73 20 6f 66 20 74 | 65 72 72 61 69 6e 20 64 |tes of t|errain d|
|00001930| 61 74 61 0d 0d 09 57 4f | 52 44 20 70 61 64 64 69 |ata...WO|RD paddi|
|00001940| 6e 67 35 3b 09 09 09 2f | 2f 20 75 6e 75 73 65 64 |ng5;.../|/ unused|
|00001950| 20 61 74 20 70 72 65 73 | 65 6e 74 0d 09 75 5f 73 | at pres|ent..u_s|
|00001960| 68 6f 72 74 20 6e 75 6d | 5f 6f 62 6a 65 63 74 73 |hort num|_objects|
|00001970| 3b 09 2f 2f 20 6e 75 6d | 62 65 72 20 6f 66 20 6d |;.// num|ber of m|
|00001980| 6f 76 69 6e 67 20 6f 62 | 6a 65 63 74 73 20 76 69 |oving ob|jects vi|
|00001990| 73 69 62 6c 65 0d 09 4f | 62 6a 65 63 74 49 6e 66 |sible..O|bjectInf|
|000019a0| 6f 20 2a 6f 62 6a 65 63 | 74 73 3b 09 2f 2f 20 61 |o *objec|ts;.// a|
|000019b0| 72 72 61 79 20 69 6e 66 | 6f 72 6d 61 74 69 6f 6e |rray inf|ormation|
|000019c0| 20 61 62 6f 75 74 20 74 | 68 6f 73 65 20 6f 62 6a | about t|hose obj|
|000019d0| 65 63 74 73 0d 0d 09 4d | 65 73 73 61 67 65 49 6e |ects...M|essageIn|
|000019e0| 66 6f 20 2a 6d 65 73 73 | 61 67 65 3b 09 2f 2f 20 |fo *mess|age;.// |
|000019f0| 53 65 74 20 69 66 20 79 | 6f 75 20 72 65 63 65 76 |Set if y|ou recev|
|00001a00| 69 65 64 20 61 20 6d 65 | 73 73 61 67 65 0d 0d 09 |ied a me|ssage...|
|00001a10| 2f 2f 20 49 6e 74 65 72 | 66 61 63 65 20 74 6f 20 |// Inter|face to |
|00001a20| 63 6f 6e 74 72 6f 6c 20 | 74 68 65 20 74 61 6e 6b |control |the tank|
|00001a30| 0d 09 75 5f 6c 6f 6e 67 | 20 2a 68 6f 6c 64 6b 65 |..u_long| *holdke|
|00001a40| 79 73 3b 0d 09 75 5f 6c | 6f 6e 67 20 2a 74 61 70 |ys;..u_l|ong *tap|
|00001a50| 6b 65 79 73 3b 0d 09 42 | 75 69 6c 64 49 6e 66 6f |keys;..B|uildInfo|
|00001a60| 20 2a 62 75 69 6c 64 3b | 0d 09 50 6c 61 79 65 72 | *build;|..Player|
|00001a70| 42 69 74 4d 61 70 20 2a | 77 61 6e 74 61 6c 6c 69 |BitMap *|wantalli|
|00001a80| 65 73 3b 2f 2f 20 57 68 | 6f 20 79 6f 75 20 77 61 |es;// Wh|o you wa|
|00001a90| 6e 74 20 74 6f 20 62 65 | 20 61 6c 6c 69 65 64 20 |nt to be| allied |
|00001aa0| 74 6f 0d 09 50 6c 61 79 | 65 72 42 69 74 4d 61 70 |to..Play|erBitMap|
|00001ab0| 20 2a 6d 65 73 73 61 67 | 65 64 65 73 74 3b 0d 09 | *messag|edest;..|
|00001ac0| 75 5f 63 68 61 72 20 2a | 73 65 6e 64 6d 65 73 73 |u_char *|sendmess|
|00001ad0| 61 67 65 3b 0d 09 0d 09 | 2f 2f 20 4e 65 77 20 61 |age;....|// New a|
|00001ae0| 64 64 69 74 69 6f 6e 73 | 20 66 6f 72 20 76 65 72 |dditions| for ver|
|00001af0| 73 69 6f 6e 20 33 0d 09 | 63 6f 6e 73 74 20 54 45 |sion 3..|const TE|
|00001b00| 52 52 41 49 4e 20 2a 74 | 68 65 57 6f 72 6c 64 3b |RRAIN *t|heWorld;|
|00001b10| 2f 2f 20 50 6f 69 6e 74 | 65 72 20 74 6f 20 32 35 |// Point|er to 25|
|00001b20| 36 78 32 35 36 20 6d 61 | 70 20 73 71 75 61 72 65 |6x256 ma|p square|
|00001b30| 73 20 28 61 72 72 61 6e | 67 65 64 20 69 6e 20 72 |s (arran|ged in r|
|00001b40| 6f 77 73 29 0d 09 47 41 | 4d 45 49 4e 46 4f 20 67 |ows)..GA|MEINFO g|
|00001b50| 61 6d 65 69 6e 66 6f 3b | 09 09 2f 2f 20 54 68 65 |ameinfo;|..// The|
|00001b60| 20 67 61 6d 65 20 6f 70 | 74 69 6f 6e 73 0d 09 0d | game op|tions...|
|00001b70| 09 7d 20 42 72 61 69 6e | 49 6e 66 6f 3b 0d 0d 74 |.} Brain|Info;..t|
|00001b80| 79 70 65 64 65 66 20 70 | 61 73 63 61 6c 20 73 68 |ypedef p|ascal sh|
|00001b90| 6f 72 74 20 42 6f 6c 6f | 42 72 61 69 6e 28 63 6f |ort Bolo|Brain(co|
|00001ba0| 6e 73 74 20 42 72 61 69 | 6e 49 6e 66 6f 20 2a 62 |nst Brai|nInfo *b|
|00001bb0| 72 61 69 6e 69 6e 66 6f | 29 3b 0d 0d 23 69 66 64 |raininfo|);..#ifd|
|00001bc0| 65 66 20 5f 5f 70 6f 77 | 65 72 63 0d 23 70 72 61 |ef __pow|erc.#pra|
|00001bd0| 67 6d 61 20 6f 70 74 69 | 6f 6e 73 20 61 6c 69 67 |gma opti|ons alig|
|00001be0| 6e 3d 72 65 73 65 74 0d | 23 65 6e 64 69 66 0d 00 |n=reset.|#endif..|
|00001bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c00| 00 00 01 00 00 00 01 4c | 00 00 00 4c 00 00 00 32 |.......L|...L...2|
|00001c10| 00 00 00 02 09 4d 79 20 | 73 6f 75 6e 64 73 01 00 |.....My |sounds..|
|00001c20| 00 00 00 07 00 00 13 df | a4 ac 78 db a5 f2 8a cf |........|..x.....|
|00001c30| 07 42 72 61 69 6e 2e 68 | 02 00 00 00 50 61 72 74 |.Brain.h|....Part|
|00001c40| 53 49 54 78 00 00 00 00 | 00 00 00 00 00 00 41 24 |SITx....|......A$|
|00001c50| 00 00 50 61 72 74 53 49 | 54 78 00 00 00 00 00 00 |..PartSI|Tx......|
|00001c60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c70| 00 00 ab e6 5a af 00 00 | 00 00 00 00 01 7e b2 69 |....Z...|.....~.i|
|00001c80| 00 00 00 00 00 52 00 65 | 01 5f 01 db 01 00 00 da |.....R.e|._......|
|00001c90| 02 8a 02 40 00 32 00 5c | 00 00 00 00 00 00 80 00 |...@.2.\|........|
|00001ca0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cc0| 00 00 00 00 00 00 09 00 | 00 00 00 02 03 6e 65 77 |........|.....new|
|00001cd0| 01 00 00 00 00 14 00 00 | 18 4f a5 c1 f4 85 a7 92 |........|.O......|
|00001ce0| b2 69 00 00 00 00 00 52 | 00 65 01 5f 01 db 01 00 |.i.....R|.e._....|
|00001cf0| 00 da 02 8a 01 00 00 32 | 00 5c 00 00 00 00 00 00 |.......2|.\......|
|00001d00| 00 00 00 48 00 09 4d 6f | 6e 61 63 6f 00 00 00 00 |...H..Mo|naco....|
|00001d10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d20| 00 00 00 00 00 00 00 06 | 00 04 00 2a 00 18 01 dd |........|...*....|
|00001d30| 02 7d 00 2a 00 18 01 dd | 02 7d ab d6 52 32 00 00 |.}.*....|.}..R2..|
|00001d40| 0a 71 00 00 0a 7a 00 00 | 06 c5 01 00 00 00 01 00 |.q...z..|........|
|00001d50| 00 00 01 4c 00 00 00 4c | 00 00 00 32 00 b2 e8 14 |...L...L|...2....|
|00001d60| 1c a6 00 00 00 1c 00 32 | 00 00 4d 50 53 52 00 00 |.......2|..MPSR..|
|00001d70| 00 0a 03 ed ff ff 00 00 | 00 00 00 b2 e6 60 00 00 |........|.....`..|
+--------+-------------------------+-------------------------+--------+--------+